home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CU Amiga Super CD-ROM 17
/
CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso
/
CUCD
/
Programming
/
MUI
/
MUIUndoc
/
MUIundoc.h
< prev
next >
Wrap
C/C++ Source or Header
|
1997-09-07
|
8KB
|
233 lines
/***************************************************************************
** The Hacker's include to MUI v1.1 :-)
**
** Copyright 1997 by Alessandro Zummo
** azummo@ita.flashnet.it
**
** This include is unofficial, use at your own risk!
**
** You can also find other undocumented tags in libraries/mui.h :-)
**
****************************************************************************
** Class Tree
****************************************************************************
**
** rootclass (BOOPSI's base class)
** +--Notify (implements notification mechanism)
** ! +--Area (base class for all GUI elements)
** ! +--Framedisplay (displays frame specification)
** ! ! \--Popframe (popup button to adjust a frame spec)
** ! +--Imagedisplay (displays image specification)
** ! ! \--Popimage (popup button to adjust an image spec)
** ! +--Pendisplay (displays a pen specification)
** ! ! \--Poppen (popup button to adjust a pen spec)
** ! +--Group (groups other GUI elements)
** ! +--Register (handles page groups with titles)
** ! ! \--Penadjust (group to adjust a pen)
** ! +--Frameadjust (group to adjust a frame)
** ! +--Imageadjust (group to adjust an image)
**
*/
#ifndef MUI_UNDOC_H
#define MUI_UNDOC_H
//Uncomment this if you want be able to use all the undocumented features
//But remember to modify your libraries/mui.h include
//#define UNDOC_HACK
/*************************************************************************
** Black box specification structures for images, pens, frames
*************************************************************************/
/* Defined in mui.h
struct MUI_PenSpec
{
char buf[32];
};
*/
struct MUI_ImageSpec
{
char buf[64];
};
struct MUI_FrameSpec
{
char buf[64];
};
// I'm not sure if MUI_ImageSpec an MUI_FrameSpec are 32 or 64 bytes wide.
/*************************************************************************
** The real MUI_NotifyData structure
*************************************************************************/
#ifdef UNDOC_HACK
struct MUI_NotifyData
{
struct MUI_GlobalInfo *mnd_GlobalInfo;
ULONG mnd_UserData;
ULONG mnd_ObjectID;
ULONG priv1;
Object *mnd_ParentObject; // The name may not be the real one
ULONG priv3;
ULONG priv4;
};
#define _parent(obj) (muiNotifyData(obj)->mnd_ParentObject) /* valid between MUIM_Setup/Cleanup */
#else
#define _parent(obj) xget(obj,MUIA_Parent)
#endif
// The use of _parent(obj) macro is strictly forbidden! Use xget(obj,MUIA_Parent) instead.
/****************************************************************************/
/** Flags **/
/****************************************************************************/
#define MADF_OBJECTVISIBLE (1<<14) // The object is visible
#define MUIMRI_INVIRTUALGROUP (1<<29) // The object is inside a virtual group
#define MUIMRI_ISVIRTUALGROUP (1<<30) // The object is a virtual group
/****************************************************************************/
/** Crawling **/
/****************************************************************************/
#ifdef _DCC
extern char MUIC_Crawling[];
#else
#define MUIC_Crawling "Crawling.mcc"
#endif
#define CrawlingObject MUI_NewObject(MUIC_Crawling
/****************************************************************************/
/** Window **/
/****************************************************************************/
/* Methods */
#define MUIM_Window_ActionIconify 0x80422cc0 /* V18 */
#define MUIM_Window_Cleanup 0x8042ab26 /* Custom Class */ /* V18 */
#define MUIM_Window_Setup 0x8042c34c /* Custom Class */ /* V18 */
struct MUIP_Window_Cleanup { ULONG MethodID; }; /* Custom Class */
struct MUIP_Window_Setup { ULONG MethodID; }; /* Custom Class */
/* Attributes */
#define MUIA_Window_DisableKeys 0x80424c36 /* V15 isg ULONG */
/****************************************************************************/
/** Area **/
/****************************************************************************/
/* Methods */
#define MUIM_DoDrag 0x804216bb /* V18 */ /* Custom Class */
#define MUIM_CreateDragImage 0x8042eb6f /* V18 */ /* Custom Class */
#define MUIM_DeleteDragImage 0x80423037 /* V18 */ /* Custom Class */
#define MUIM_GoActive 0x8042491a
#define MUIM_GoInactive 0x80422c0c
struct MUIP_DeleteDragImage { ULONG MethodID; struct MUI_DragImage *di; }; /* Custom Class */
struct MUIP_CreateDragImage { ULONG MethodID; LONG touchx; LONG touchy; ULONG flags; }; /* Custom Class */
struct MUIP_DoDrag { ULONG MethodID; LONG touchx; LONG touchy; ULONG flags; }; /* Custom Class */
#define MUIV_CreateBubble_DontHidePointer (1<<0)
struct MUI_DragImage
{
struct BitMap *bm;
WORD width; /* exact width and height of bitmap */
WORD height;
WORD touchx; /* position of pointer click relative to bitmap */
WORD touchy;
ULONG flags; /* must be set to 0 */
};
/****************************************************************************/
/** Imagedisplay **/
/****************************************************************************/
/* Attributes */
#define MUIA_Imagedisplay_Spec 0x8042a547 /* V11 isg struct MUI_ImageSpec * */
/****************************************************************************/
/** Imageadjust **/
/****************************************************************************/
/* Attributes */
#define MUIA_Imageadjust_Type 0x80422f2b /* V11 i.. LONG */
/****************************************************************************/
/** Framedisplay **/
/****************************************************************************/
/* Attributes */
#define MUIA_Framedisplay_Spec 0x80421794 /* isg struct MUI_FrameSpec * */
/****************************************************************************/
/** Prop **/
/****************************************************************************/
/* Attributes */
#define MUIA_Prop_DeltaFactor 0x80427c5e /* V4 .s. LONG */
#define MUIA_Prop_DoSmooth 0x804236ce /* V4 i.. LONG */
/****************************************************************************/
/** Group **/
/****************************************************************************/
/* Attributes */
#define MUIA_Group_Forward 0x80421422 /* V11 .s. BOOL */
/****************************************************************************/
/** Text **/
/****************************************************************************/
/* Attributes */
#define MUIA_Text_HiCharIdx 0x804214f5
/****************************************************************************/
/** Dtpic **/
/****************************************************************************/
/* Attributes */
#define MUIA_Dtpic_Name 0x80423d72
#endif // MUI_UNDOC_H